home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 003 / propmgr1.arc / REPORT.BLD < prev    next >
Encoding:
Text File  |  1979-12-31  |  20.5 KB  |  704 lines

  1. * DATE 08/31/84  21:54
  2. * report.bld
  3. STOR t TO more
  4. DO WHIL more
  5.  STOR CHR(PEEK (063)) TO dr
  6.  REST from coname additive
  7.  ERAS
  8.  STOR 'Y' TO printer
  9.  STOR 'N' TO disk
  10.  STOR '        ' TO filename
  11.  STOR '?' TO command
  12. TEXT
  13.  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  14.  *                                                                           *
  15.  *                                                                           *
  16.  *                                                                           *
  17.  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  18.  *                                                                           *
  19.  *                                                                           *
  20.  *                                                                           *
  21.  *                                                                           *
  22.  *                                                                           *
  23.  *                                                                           *
  24.  *                                                                           *
  25.  *                                                                           *
  26.  *                                                                           *
  27.  *                                                                           *
  28.  *                                                                           *
  29.  *                                                                           *
  30.  *                                                                           *
  31.  *                                                                           *
  32.  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  33.  *   Please select one of the above options. You may also leave this menu    *
  34.  *   by typing 'Q' and get on-line HELP by typing '?'.                       *
  35.  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  36. ENDT
  37.  @ 3,04 SAY coname + " -  BUILDING REPORT MENU"
  38.  @ 3,65 SAY DATE()
  39.  @ 7,29 SAY "A. Rent bills"
  40.  @ 8,29 SAY "B. Tenant roster"
  41.  @ 9,29 SAY "C. Delinquency report"
  42.  @ 10,29 SAY "D. Tenant mailing labels"
  43.  @ 11,29 SAY "E. Vacancy list"
  44.  @ 12,29 SAY "F. Lease expiration and flag report"
  45.  @ 13,29 SAY "G. Return to Main Menu"
  46.  @ 15,23 SAY "PLEASE SELECT ONE OF THE OPTIONS"
  47.  @ 15,58 GET command PICTURE '!'
  48.  READ
  49.  DO WHIL @(COMMAND, 'ABCDEFG?Q') = 0
  50.   STOR '?' TO command
  51.   @ 15,58 GET command PICTURE '!'
  52.   READ
  53.  ENDD
  54.  CLEA GETS
  55.  IF command >='B' .AND. command <  'G'
  56.   @ 17,00
  57.   @ 17,00 SAY " *         Send Report to the Printer (Y/N)                                  *"
  58.   @ 17,55 GET printer PICTURE '!'
  59.   READ
  60.   @ 18,00 SAY " *         Send Report  to a Disk File (Y/N)                                 *"
  61.   @ 18,55 GET disk PICTURE '!'
  62.   READ
  63.   IF disk ='Y'
  64.    @ 17,00
  65.    @ 18,00
  66.    @ 17,00 SAY " *          Enter Disk File Name                                             *"
  67.    @ 17,34 GET filename PICTURE '!!!!!!!!'
  68.    @ 17,44 SAY "(.TXT will be added )"
  69.    @ 18,00 SAY ' *                                                                           *'
  70.    READ
  71.    @ 18,00 SAY ' *          Select drive to put Files on                                     *'
  72.    @ 18,55 GET dr PICTURE '!'
  73.    READ
  74.    DO WHIL @(dr,'AB') = 0
  75.     @ 18,00
  76.     @ 18,00 SAY ' *          Select drive to put Files on                                     *'
  77.     @ 18,55 GET dr PICTURE '!'
  78.     READ
  79.    ENDD while @
  80.   ENDI disk = Y
  81.   STOR LEN(coname)/2  TO L
  82.   STOR 40-L TO L
  83.   STOR '                                        ' TO bl
  84.   STOR $(bl,1,L) + coname TO coname
  85.   IF printer = 'Y'
  86.    @ 17,00
  87.    @ 18,00
  88.    @ 17,00 SAY ' *          MAKE PRINTER READY AND HIT ANY KEY                               *'
  89.    @ 18,00 SAY ' *                                                                           *'
  90.    SET CONSOLE OFF
  91.    WAIT
  92.    SET CONSOLE ON
  93.    SET print ON
  94.   ENDI printer = Y
  95.   IF disk = 'Y' .AND. filename <> ' '
  96. * make a proper REPORT file name that is of type TXT
  97.    STOR @('.',filename) TO length
  98.    IF length = 0 .OR. length > 8
  99.     STOR 9 TO length
  100.    ENDI length
  101.    STOR $(filename,1,length-1) TO filename
  102.    STOR '&dr.:'+filename+'.TXT' TO filename
  103.    SET ALTERNATE TO &filename
  104.    SET ALTERNATE ON
  105.   ENDI disk = Y and filename <> ''
  106.  ENDI command
  107.  ERAS
  108.  DO CASE
  109.  CASE command = 'A'
  110.   SET PRINT OFF
  111. * rent bills
  112.   STOR CHR(PEEK(063)) TO dr
  113.   SELE PRIMARY
  114.   USE &dr.:build
  115.   SET INDEX TO &dr.:code
  116.   ERAS
  117. TEXT
  118.  
  119.                  This module prepares the rent bills. If the
  120.                  rents for the month have not been posted and
  121.                  the new rents not accrued please take care of
  122.                  that before you run this program.  
  123.  
  124.                  The form set up is for UARCO C599 and envelope
  125.                  EN81. Form length is 7 inches.      
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139. ENDT
  140.   STOR 'Y' TO command
  141.   @ 10,20 SAY 'ARE YOU READY TO PROCEED ? '
  142.   @ 10,50 GET command PICTURE '!'
  143.   READ
  144.   IF COMMAND = 'Y'
  145.    SET confirm on
  146.    STOR '  ' TO build
  147.    @ 12,10 SAY "What building shall we prepare bills for ('99' for all) "
  148.    @ 12,70 GET build PICTURE '99'
  149.    READ
  150.    IF build <> '99'
  151.     FIND &build
  152.     DO WHIL # = 0
  153.      @ 12,70 GET build PICTURE '99'
  154.      READ
  155.      FIND &build
  156.     ENDD WHILE #
  157.    ELSE
  158.     GO TOP
  159.    ENDI build <> '99'
  160.    STOR '         ' TO month
  161.    @ 13,10 SAY "For what month "
  162.    @ 13,40 GET month PICTURE '!XXXXXXXX'
  163.    READ
  164.    @ 16,10 SAY 'Hit any key when the printer is on and the proper paper loaded'
  165.    @ 17,10 SAY 'with the top of the form at the level of the print head.'
  166.    SET CONSOLE OFF
  167.    WAIT
  168.    SET CONSOLE ON
  169.    SET PRINT ON
  170.    ERAS
  171.    STOR t TO bigloop
  172.    DO WHIL BIGLOOP .AND(.NOT. EOF)
  173.     IF build <> '99'
  174.      STOR f TO bigloop
  175.     ELSE
  176.      STOR # TO rec:no
  177.     ENDI build <> '99'
  178.     STOR bcode TO mbcode
  179.     STOR baddr TO mbaddr
  180.     STOR $(bcity,1,22) + '  ' + $(bcity,23,5) TO mbcity
  181.     STOR remit TO mremit
  182.     STOR remitad TO mremitad
  183.     STOR remitc TO mremitc
  184.     STOR phone TO mphone
  185.     STOR checks TO mchecks
  186.     SELE SECONDARY
  187.     USE &dr.:tenant
  188.     SET index TO &dr.:codea
  189.     FIND &mbcode
  190.     DO WHIL $(bcode,1,2) = mbcode .AND.(.NOT. EOF)
  191.      IF tenant <> ' '
  192.       STOR 0 TO line
  193.       STOR 0 TO mtotal
  194.       STOR trent TO trentx
  195.       IF ttype = 'P'
  196.        IF (trentpc*(trentpcr/100)/12)>trent
  197.         STOR (trentpc*(trentpcr/100)/12) TO trentx
  198.        ENDI (trentpc)
  199.       ENDI ttype = 'P'
  200.       IF ttype = 'O'
  201.        STOR ((trentpc*(trentpcr/100)/12)+trent) TO trentx
  202.       ENDI ttype = 'O'
  203.       ? '   '
  204.       ? '   ' + mremit
  205.       ? '   ' + mremitad
  206.       ? '   ' + mremitc
  207.       ? ' '
  208.       ? ' '
  209.       ? '    PLEASE SEND CHECKS TO ABOVE ADDRESS PAYABLE TO:'
  210.       ? '    ' + mchecks
  211.       ? ' '
  212.       ? ' '
  213.       ? ' '
  214.       ? ' '
  215.       ? '      ' + tenant + '          Unit ' +tunit
  216.       IF alt = 'Y'
  217.        ? '      ' + altad
  218.        ? '      ' + altcty
  219.       ELSE
  220.        ? '      ' + mbaddr
  221.        ? '      ' + mbcity
  222.       ENDI alt
  223.       ? ' '
  224.       ? ' '
  225.       ? '                           R E N T    S T A T E M E N T'
  226.       ? ' '
  227.       ? ' '
  228.       ? '                        Refer inquiries to ' + mphone
  229.       ? ' '
  230.       ? ' '
  231.       IF trentp > 0
  232.        ? '       Paid ' + trentpd + '. THANK YOU                        '+STR(trentp,12,2)
  233.        STOR line + 1 TO line
  234.       ENDI trentp > 0
  235.       ? '       Unpaid balance ' + date() + '                         '+STR(trentd,12,2)
  236.       STOR mtotal + trentd TO mtotal
  237.       ? ' '
  238.       IF ttype = 'P' .OR. ttype = 'O'
  239.        ? '       Base Rent ' + STR(trent,12,2)
  240.       ENDI ttype
  241.       ? '       Base Rent for the month of ' + month + '            '+STR(trentx,12,2)
  242.       STOR mtotal + trentx TO mtotal
  243.       IF trente > 0
  244.        ? '       Electricity                                     '+ STR(trente,12,2)
  245.        STOR mtotal + trente TO mtotal
  246.        STOR line + 1 TO line
  247.       ENDI trente
  248.       IF trentm > 0
  249.        ? '       Miscellaneous charges                           '+STR(trentm,12,2)
  250.        STOR mtotal + trentm TO mtotal
  251.        STOR line + 1 TO line
  252.       ENDI trentm > 0
  253.       IF taddl > 0
  254.        ? '       Additional charges                              '+STR(taddl,12,2)
  255.        STOR mtotal + taddl TO mtotal
  256.        STOR line + 1 TO line
  257.       ENDI taddl >0
  258.       ? ' '
  259.       ? '       TOTAL DUE                                      $'+STR(mtotal,12,2)
  260.       STOR mtotal + tlatec TO mtotal
  261.       ? ' '
  262.       ? ' '
  263.       ? '       AFTER ' + TRIM(!(month)) + ' ' +tlate + ' PAY -   $ '+STR(mtotal,12,2)
  264.       STOR 11- line TO line1
  265.       DO WHIL line1 > 0
  266.        ? ' '
  267.        STOR line1 - 1 TO line1
  268.       ENDD
  269.      ENDI tenant <> ' '
  270.      SKIP
  271.     ENDD WHILE $(bcode)
  272.     SELE PRIMARY
  273.     USE &dr.:BUILD
  274.     SET INDEX TO &dr.:code
  275.     IF bigloop
  276.      GO rec:no
  277.      SKIP
  278.     ENDI bigloop
  279.    ENDD WHILE .NOT. EOF
  280.   ENDI command = 'Y'
  281.   EJEC
  282.   SET PRINT OFF
  283.   SET CONFIRM off
  284.   RELE ALL
  285.   ERAS
  286.   STOR t TO more
  287.   STOR 'Y' TO printer
  288.   STOR 'N' TO disk
  289.   STOR '        ' TO filename
  290.   STOR '?' TO select
  291.   STOR CHR(PEEK(063)) TO dr
  292.   SELE PRIMARY
  293.   USE &dr.:build
  294.   SET INDEX TO &dr.:code
  295.  CASE command = 'B'
  296. * tenant roster
  297.   STOR CHR(PEEK(063)) TO dr
  298.   SELE SECONDARY
  299.   USE &dr.:tenant
  300.   SET INDEX TO &dr.:codea
  301.   ERAS
  302. * initialize variables
  303.   STOR 0 TO pageno
  304.   STOR 0 TO counter
  305.   STOR 0 TO counter1
  306.   STOR 0 TO additup
  307.   STOR ' ' TO mtenant
  308.   SET MARGIN TO 3
  309.   GO TOP
  310.   STOR t TO more1
  311.   DO WHIL more1
  312. * do page counter etc
  313.    STOR pageno + 1 TO pageno
  314.    STOR 4 TO lineno
  315.    ERAS
  316.    ? '  '
  317.    IF pageno = 1
  318.     ? coname
  319.     ? '                                 TENANT REPORT'
  320.     ? ' '
  321.     ? 'Report of ' +date() + '.'
  322.     STOR lineno + 4 TO lineno
  323.    ENDI pageno = 1
  324.    ? '                                                                    ' + 'PAGE ' + STR(pageno,2)
  325.    ? '  Tenant                            ' + 'Code   '+ '   Unit     ' + ' Expires' + '        Rent'
  326.    ? "----------------------------------------------------------------------------"
  327.    ? ' '
  328. * now fill up rest of page to 50 lines with entries
  329.    DO WHIL lineno < 50
  330. * now do a page if not end of file
  331.     DO WHIL .NOT. EOF
  332.      STOR tenant TO mtenant
  333.      IF tenant = ' '
  334.       STOR 'VACANT                             ' TO mtenant
  335.      ENDI
  336.      ? mtenant + ' ' + bcode + '      ' + tunit + '    ' + texpir +'  ' + STR(trent,9,2)
  337.      STOR lineno +1 TO lineno
  338.      STOR additup + trent TO additup
  339.      STOR counter1 + 1 TO counter1
  340.      SKIP
  341.     ENDD WHILE .NOT. EOF
  342.     STOR f TO more1
  343.     STOR 60 TO lineno
  344.    ENDD while lineno < 50
  345.    ? ' '
  346.    ? "----------------------------------------------------------------------------"
  347.    ? ' '
  348.    ? '                       TOTAL NUMBER OF RENTAL UNITS:  ' + STR(counter1,3)
  349.    ? '                                          RENT ROLL: $' + STR(additup,10,2)
  350.    ? '  '
  351.   ENDD more1
  352. * if it was on turn it off
  353.   EJEC
  354.   SET PRINT OFF
  355.   SET ALTERNATE OFF
  356.   ? '                       Hit any key to continue..........'
  357.   SET CONSOLE OFF
  358.   WAIT
  359.   SET CONSOLE ON
  360.   RELE ALL
  361.   ERAS
  362.   STOR t TO more
  363.   STOR 'Y' TO printer
  364.   STOR 'N' TO disk
  365.   STOR '        ' TO filename
  366.   STOR '?' TO select
  367.   STOR CHR(PEEK(063)) TO dr
  368.   SELE PRIMARY
  369.   USE &dr.:BUILD
  370.   SET INDEX TO &dr.:code
  371.  CASE command = 'C'
  372. * tenant delinquency report
  373.   STOR CHR(PEEK(063)) TO dr
  374.   SELE SECONDARY
  375.   USE &dr.:tenant
  376.   SET INDEX TO &dr.:codea
  377.   GO TOP
  378. * initialize variables
  379.   STOR 0 TO pageno
  380.   STOR 0 TO counter
  381.   STOR 0 TO counter1
  382.   STOR t TO more1
  383.   STOR 0 TO additup
  384.   SET MARGIN TO 3
  385.   LOCA FOR trentd > 0
  386.   IF EOF
  387.    STOR f TO more1
  388.   ENDI EOF
  389.   DO WHIL more1
  390. * do page counter etc
  391.    STOR pageno + 1 TO pageno
  392.    STOR 4 TO lineno
  393.    ERAS
  394.    ? '  '
  395. * and write TITLE
  396.    IF pageno = 1
  397.     ? coname
  398.     ? '                            TENANT DELINQUENCY LIST'
  399.     ? ' '
  400.     ? 'Report of ' +date() + '.'
  401.     STOR lineno + 4 TO lineno
  402.    ENDI pageno = 1
  403.    ? '                                                                    ' + 'PAGE ' + STR(pageno,2)
  404.    ? '  Tenant                             ' + 'Code   '+ 'Late Date' + '        Due'
  405.    ? "----------------------------------------------------------------------------"
  406.    ? ' '
  407. * now fill up rest of page to 50 lines with entries
  408.    DO WHIL lineno < 50
  409. * now do a page if not end of file
  410.     IF .NOT. EOF
  411.      IF tlate < $(date(),4,2)
  412.       ? tenant + '   ' + bcode + '      ' + tlate + '      ' + STR(trentd,9,2)
  413.       STOR lineno +1 TO lineno
  414.       STOR additup + trentd TO additup
  415.       STOR counter1 + 1 TO counter1
  416.       CONT
  417.      ELSE
  418.       CONT
  419.    ENDI tlate
  420.     ELSE
  421.      STOR f TO more1
  422.      STOR 60 TO lineno
  423.     ENDI not EOF
  424.    ENDD while lineno < 50
  425.    ? ' '
  426.    ? "----------------------------------------------------------------------------"
  427.    ? ' '
  428.    ? '                      TOTAL NUMBER OF DELINQUENCIES:  ' + STR(counter1,3)
  429.    ? '                     TOTAL DOLLAR AMOUNT DELINQUENT: $' + STR(additup,10,2)
  430.    ? '  '
  431.   ENDD more1
  432. * if it was on turn it off
  433.   EJEC
  434.   SET PRINT OFF
  435.   SET ALTERNATE OFF
  436.   ? '                          Hit any key to continue.........'
  437.   SET CONSOLE OFF
  438.   WAIT
  439.   SET CONSOLE ON
  440.   RELE ALL
  441.   ERAS
  442.   STOR t TO more
  443.   STOR 'Y' TO printer
  444.   STOR 'N' TO disk
  445.   STOR '        ' TO filename
  446.   STOR '?' TO select
  447.   STOR CHR(PEEK(063)) TO dr
  448.   SELE PRIMARY
  449.   USE &dr.:BUILD
  450.   SET INDEX TO &dr.:code
  451.  CASE command = 'D'
  452. * tenant labels
  453. * adjust for printer
  454.   STOR CHR(PEEK(063)) TO dr
  455.   SELE PRIMARY
  456.   USE &dr.:build
  457.   SET INDEX TO &dr.:code
  458.   GO TOP
  459.   STOR t TO more2
  460.   DO WHIL more2 .AND. (.NOT. EOF)
  461.    STOR # TO rec:no
  462.    STOR bcode TO mbcode
  463.    STOR baddr TO mbaddr
  464.    STOR $(bcity,1,22) + '  ' + $(bcity,23,5) TO mbcity
  465.    SELE SECONDARY
  466.    USE &dr.:tenant
  467.    SET INDEX TO &dr.:codea
  468.    FIND &mbcode
  469.    STOR $(bcode,1,2) TO mtcode
  470.    DO WHIL mtcode = mbcode .AND. (.NOT. EOF)
  471.     IF tenant <> ' '
  472.      ? ' '
  473.      ? TRIM(tenant)  + '  ' + tunit
  474.      ? mbaddr
  475.      ? mbcity
  476.      ? '  '
  477.     ENDI tenant
  478.     SKIP
  479.     STOR $(bcode,1,2) TO mtcode
  480.    ENDD WHILE mtcode
  481.    SELE PRIMARY
  482.    USE &dr.:build
  483.    SET INDEX TO &dr.:code
  484.    GO rec:no
  485.    SKIP
  486.    IF EOF
  487.     STOR f TO more2
  488.    ENDI
  489.   ENDD WHILE more2 .AND. (.NOT. EOF)
  490.   EJEC
  491.   SET PRINT OFF
  492.   SET ALTERNATE OFF
  493.   RELE ALL
  494.   ERAS
  495.   STOR t TO more
  496.   STOR 'Y' TO printer
  497.   STOR 'N' TO disk
  498.   STOR '        ' TO filename
  499.   STOR '?' TO select
  500.   STOR CHR(PEEK(063)) TO dr
  501.   SELE PRIMARY
  502.   USE &dr.:BUILD
  503.   SET INDEX TO &dr.:code
  504.  CASE command = 'E'
  505. * vacancy report
  506.   STOR CHR(PEEK(063)) TO dr
  507.   SELE SECONDARY
  508.   USE &dr.:tenant
  509.   SET INDEX TO &dr.:codea
  510.   GO TOP
  511. * initialize variables
  512.   STOR 0 TO pageno
  513.   STOR 0 TO counter
  514.   STOR 0 TO counter1
  515.   STOR 0 TO additup
  516.   SET MARGIN TO 3
  517.   LOCA FOR tenant = ' '
  518.   IF .NOT. EOF
  519.    STOR t TO more1
  520.   ELSE
  521.    STOR f TO more1
  522.   ENDI .NOT. EOF
  523.   DO WHIL more1
  524. * do page counter etc
  525.    STOR pageno + 1 TO pageno
  526.    STOR 4 TO lineno
  527.    ERAS
  528.    ? '  '
  529. * and write TITLE
  530.    IF pageno = 1
  531.     ? coname
  532.     ? '                                VACANCY REPORT'
  533.     ? ' '
  534.     ? 'Report of ' +date() + '.'
  535.     STOR lineno + 4 TO lineno
  536.    ENDI pageno = 1
  537.    ? '                                                                    ' + 'PAGE ' + STR(pageno,2)
  538.    ? '  Building                              ' + 'Code   '+ 'Unit     ' + '   Last Rent'
  539.    ? "----------------------------------------------------------------------------"
  540.    ? ' '
  541. * now fill up rest of page to 50 lines with entries
  542.    DO WHIL lineno < 50
  543. * now do a page if not end of file
  544.     ? baddr + '   ' + bcode + '      ' + tunit + '      ' + STR(trent,9,2)
  545.     STOR lineno +1 TO lineno
  546.     STOR additup + trent TO additup
  547.     STOR counter1 + 1 TO counter1
  548.     CONT
  549.     IF EOF
  550.      STOR f TO more1
  551.      STOR 60 TO lineno
  552.     ENDI not EOF
  553.    ENDD while lineno < 50
  554.    ? ' '
  555.    ? "----------------------------------------------------------------------------"
  556.    ? ' '
  557.    ? '                         TOTAL NUMBER OF VACANCIES:  ' + STR(counter1,3)
  558.    ? '                     TOTAL DOLLAR AMOUNT VACANCIES: $' + STR(additup,10,2)
  559.    ? '  '
  560.   ENDD more1
  561. * if it was on turn it off
  562.   EJEC
  563.   SET PRINT OFF
  564.   SET ALTERNATE OFF
  565.   ? '                          Hit any key to continue................'
  566.   SET CONSOLE OFF
  567.   WAIT
  568.   SET CONSOLE ON
  569.   RELE ALL
  570.   ERAS
  571.   STOR t TO more
  572.   STOR 'Y' TO printer
  573.   STOR 'N' TO disk
  574.   STOR '        ' TO filename
  575.   STOR '?' TO select
  576.   STOR CHR(PEEK(063)) TO dr
  577.   SELE PRIMARY
  578.   USE &dr.:BUILD
  579.   SET INDEX TO &dr.:code
  580.  CASE command = 'F'
  581. * lease expiration report
  582.   STOR CHR(PEEK(063)) TO dr
  583.   SELE SECONDARY
  584.   USE &dr.:tenant
  585.   SET INDEX TO &dr.:codea
  586.   ERAS
  587.   STOR date() to exdate
  588.   @ 10,10 SAY 'What is the cutoff date for the report ? '
  589.   @ 10,55 GET exdate PICTURE '99/99/99'
  590.   READ
  591.   STOR $(exdate,7,2) + $(exdate,1,2) + $(exdate,4,2) TO expdate
  592. * initialize variables
  593.   STOR 0 TO pageno
  594.   STOR 0 TO counter
  595.   STOR 0 TO counter1
  596.   STOR 0 TO additup
  597.   SET MARGIN TO 1
  598.   GO TOP
  599.   STOR t TO more1
  600.   DO WHIL more1
  601. * do page counter etc
  602.    STOR pageno + 1 TO pageno
  603.    STOR 4 TO lineno
  604.    ERAS
  605.    ? '  '
  606.    IF pageno = 1
  607.     ? coname
  608.     ? '                        LEASE EXPIRATION AND FLAG REPORT'
  609.     ? ' '
  610.     ? 'Report of ' +date() + '.'
  611.     STOR lineno + 4 TO lineno
  612.    ENDI pageno = 1
  613.    ? '                                                                    ' + 'PAGE ' + STR(pageno,2)
  614.    ? '  Tenant                            ' + 'Code   '+ ' Unit  ' + '  Flag'+'    Expires'+ '    Rent'
  615.    ? "----------------------------------------------------------------------------"
  616.    ? ' '
  617. * now fill up rest of page to 50 lines with entries
  618.    DO WHIL lineno < 50
  619. * now do a page if not end of file
  620.     DO WHIL .NOT. EOF
  621.      STOR $(texpir,7,2) + $(texpir,1,2) + $(texpir,4,2) TO mwxpir
  622.      STOR $(tflag,7,2) + $(tflag,1,2) + $(tflag,4,2) TO flagex
  623.      IF flagex = ' '
  624.      STORE '999999' TO flagex
  625.      ENDIF flagex
  626.      IF VAL(mwxpir) <  VAL(expdate) .OR. VAL(flagex) < VAL(expdate)
  627.       ? tenant + ' ' + bcode + '   ' + tunit +' '+ tflag +' '+ texpir +' ' + STR(trent,9,2)
  628.       STOR lineno +1 TO lineno
  629.       STOR additup + trent TO additup
  630.       STOR counter1 + 1 TO counter1
  631.      ENDI VAL(mwexpir)
  632.      SKIP
  633.     ENDD WHILE .NOT. EOF
  634.     STOR f TO more1
  635.     STOR 60 TO lineno
  636.    ENDD while lineno < 50
  637.    ? ' '
  638.    ? "----------------------------------------------------------------------------"
  639.    ? ' '
  640.    ? '               TOTAL FLAGGED AND/OR EXPIRING LEASES:  ' + STR(counter1,3)
  641.    ? '                      TOTAL DOLLAR AMOUNT OF LEASES: $' + STR(additup,10,2)
  642.    ? '  '
  643.   ENDD more1
  644. * if it was on turn it off
  645.   EJEC
  646.   SET PRINT OFF
  647.   SET ALTERNATE OFF
  648.   ? '                          Hit any key to continue..........'
  649.   SET CONSOLE OFF
  650.   WAIT
  651.   SET CONSOLE ON
  652.   RELE ALL
  653.   ERAS
  654.   STOR t TO more
  655.   STOR 'Y' TO printer
  656.   STOR 'N' TO disk
  657.   STOR '        ' TO filename
  658.   STOR '?' TO select
  659.   STOR CHR(PEEK(063)) TO dr
  660.   SELE PRIMARY
  661.   USE &dr.:BUILD
  662.   SET INDEX TO &dr.:code
  663.  CASE command = '?'
  664.   ERAS
  665. TEXT
  666.  
  667.                R E P O R T   M E N U   H E L P   F I L E
  668.  
  669. The various reports are self explanatory. You should note, however, that
  670. the rent bills must be sent to the printer. All of the other reports can
  671. be sent to the printer, viewed on screen or written to a disk file (or
  672. any combination thereof).
  673.  
  674. A certain amount of customization may be required for your bills and for
  675. your labels. All of this is pretty well set forth in the program text.
  676. (Type REPORT.BLD to find the correct name of the report program you must
  677. edit.)
  678.  
  679. We assume that the rent bills will use the UARCO form we are using. If that
  680. is not the case, you will have to adjust it, but adjustments are rather  
  681. easy. You can also print the form on plain paper. The ledger and journal
  682. printing programs have a module to input and center text.
  683.  
  684.  
  685.                     Please hit any key to return to the menu
  686.  
  687.  
  688. ENDT
  689.   SET CONSOLE OFF
  690.   WAIT
  691.   SET CONSOLE ON
  692.  CASE (command = 'G' .OR. COMMAND = 'Q')
  693.   STOR f TO more
  694.  ENDC
  695.  SET PRINT OFF
  696.  SET ALTERNATE OFF
  697. ENDD while more
  698. RELE ALL
  699. STOR t TO keepitup
  700. STOR t TO more
  701. STOR t TO first
  702. STOR 0 TO box
  703. RETU
  704.